.icon {
    overflow: hidden;
    display: flex;
    justify-content: center;
    border-radius: 25%;
    background-color: #0DD;
    transition: background-color 0.5s;
    user-select: none;
    width: inherit;
    height: inherit;
    position: relative;
}

.icon::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    z-index: 1;
    background-color: rgba(0, 0, 0);
    opacity: 0;
}

.icon:active::after {
    opacity: 0.3;
}